Skip to content

feat(unstable): add tool call name - #1752

Merged
benbrandt merged 1 commit into
mainfrom
tool-call-name
Jul 21, 2026
Merged

feat(unstable): add tool call name#1752
benbrandt merged 1 commit into
mainfrom
tool-call-name

Conversation

@benbrandt

Copy link
Copy Markdown
Member

No description provided.

Copilot AI review requested due to automatic review settings July 21, 2026 11:26
@benbrandt
benbrandt requested a review from a team as a code owner July 21, 2026 11:26

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR introduces an unstable optional name field on tool call objects (ACP v1 and v2) to carry the programmatic identifier of the invoked tool, enabling clients to display “which tool” was used in addition to the existing human-readable title and categorical kind.

Changes:

  • Extend the unstable JSON schemas (v1/v2) and generated protocol docs to include ToolCall.name.
  • Implement name in the Rust schema crate behind unstable_tool_call_name, including v1↔v2 conversion behavior and tests (preserving v2 patch semantics, and erroring on v2 name: null when converting to v1).
  • Add an RFD (“Tool Call Name”), link it into docs navigation, and record the lifecycle update entry.

Reviewed changes

Copilot reviewed 13 out of 13 changed files in this pull request and generated no comments.

Show a summary per file
File Description
schema/v2/schema.unstable.json Adds optional nullable name to v2 tool-call update schema with patch semantics.
schema/v1/schema.unstable.json Adds optional nullable name to v1 tool-call and tool-call-update schemas (null/omission semantics).
docs/rfds/updates.mdx Records the RFD moving to Draft stage.
docs/rfds/tool-call-name.mdx New RFD describing motivation, wire semantics, and compatibility notes.
docs/protocol/v2/draft/tool-calls.mdx Documents name field and adds it to the example tool-call update.
docs/protocol/v2/draft/schema.mdx Adds generated schema docs entries for name in relevant v2 shapes.
docs/protocol/v1/draft/tool-calls.mdx Documents name field and its update semantics; updates example tool call.
docs/protocol/v1/draft/schema.mdx Adds generated schema docs entries for name in relevant v1 shapes.
docs/docs.json Adds the new RFD page to the docs navigation.
agent-client-protocol-schema/src/v2/tool_call.rs Adds ToolCallUpdate.name as a three-state patch field behind a feature flag, plus patch semantics tests.
agent-client-protocol-schema/src/v2/conversion.rs Adds v1↔v2 conversion for name, including a v2→v1 null-unrepresentable error test.
agent-client-protocol-schema/src/v1/tool_call.rs Adds optional ToolCall.name and ToolCallUpdateFields.name behind a feature flag, plus serialization/update tests.
agent-client-protocol-schema/Cargo.toml Introduces unstable_tool_call_name feature and includes it in the unstable umbrella.

@benbrandt
benbrandt merged commit 7f3ed73 into main Jul 21, 2026
14 checks passed
@benbrandt
benbrandt deleted the tool-call-name branch July 21, 2026 11:33
@acp-release-bot acp-release-bot Bot mentioned this pull request Jul 21, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants